A high speed serial interface such as SRIO (Serial Rapid IO) is known as a technology which connects devices with each other. For example, SRIO is also used in a processing unit such as a baseband processing unit which performs a signal processing for wireless signal in a base station of a wireless communication system. Respective processing modules within the baseband processing unit are connected with each other in a star shape using a SRIO switch, and transmit and receive data through a data communication path of a SRIO packet.
A receiver-side flow control is generally used for a flow control in SRIO communication and thus, a flow control buffer is provided on a transmission side. The space of the buffer for transmission is fixedly divided into regions to be allocated for respective “High”, “Mid”, and “Low”, each of which is a priority of SRIO packets.
The SRIO switch sequentially stores SRIO packets in the region of a retransmission buffer corresponding to the priority of each SRIO packet in an order that the SRIO packets are received from each processing unit. Also, the SRIO switch reads SRIO packets from the region for “High” SRIO packets having the highest priority and transmits the SRIO packet to a destination. Subsequently, when the packet transmission of the region for the “High” SRIO packet is completed, the SRIO switch reads SRIO packets from a region for “Mid” SRIO packets having the next highest priority and transmits the SRIO packets to the destination. Thereafter, when the packet transmission of the region for the “Mid” SRIO packet is completed, the SRIO switch reads SRIO packets from a region for “Low” SRIO packets and transmits the SRIO packets to the destination.
See, for example, Japanese Patent Application Laid-Open No. 2010-218108 and Japanese Patent Application Laid-Open No. 2006-113798.